#include <stdio.h>
#include <string.h>
int gcd(int a,int b){
    return b?gcd(b,a%b):a;
    //有没有dalao知道这题和最大公约数有关系的，艾特我一哈
}
int main(){
    int n,cow[105]={0},vis[3005]={0};
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d",&cow[i]);
    }
    int ans=1;
    int cnt=n;
    while(cnt){
        cnt=n;
        memset(vis,0,sizeof(vis));
        for(int i=0;i<n;i++){
            if(cow[i]%ans>ans||vis[cow[i]%ans])break;
            vis[cow[i]%ans]=1;
            cnt--;
        }
        ans++;
    }
    printf("%d\n",ans-1);
    return 0;
}